$(function() {
	  init();
});
//页面初始化调用方法
function init(){
	//1.初始化Table
	var roleTable = new TableInit();
	roleTable.Init();
}
// 弹出编辑角色页面
function edit() {
	var selectDepts= $("#deptTables").bootstrapTable('getSelections'); 
	if (selectDepts.length == 0) {
		var content = "请选择要编辑的组织机构!";
		info(content);
	} else{
		var depID = selectDepts[0].depID;
		var depName = selectDepts[0].depName;
		var depDescription = selectDepts[0].depDescription;
		BootstrapDialog.show({
	    	title: '编辑组织机构信息',
	    	draggable: true,
			closable: false,
	        message: $("<form class='form-inline' style='height:300px'></form>").load('deptAdd.html')  ,
	        onshown:function(){
	        	//初始化编辑框的值
	        	$("#deptID").val(depID);
	        	$("#deptName").val(depName);
	        	$("#deptContent").val(depDescription);
	        },
	        buttons: [{
	            icon: 'glyphicon glyphicon-check',
	            label: '确定',
	            cssClass: 'btn-primary',
	            autospin: true,
	            action: function(dialogRef){
	            	var deptNameNew = $("#deptName").val().trim();
	            	var deptContent = $("#deptContent").val().trim();
	            	editDept(depID,deptNameNew,deptContent);
	            }
	        }, {
	            label: '取消',
	            action: function(dialogRef){
	                dialogRef.close();
	            }            
	        }]
	    });
	}
}
// 发送编辑组织机构信息
function editDept(depID,deptNameNew,deptContent) {
	var ok = true;
	if (deptNameNew == "") {
		ok = false;
		var content = "组织机构名称不能为空!";
		info(content);
	}
	// 发送ajax请求
	if (ok) {
		$.ajax({
			url :"../../../department/updateDepartment",
			type : "post",
			data : {
				depID : depID,
				depName : deptNameNew,
				depDescription : deptContent
			},
			dataType : "json",
			success : function(data) {
				if (data.flag == 0) {
					success(data.content);
					queryBytableId('deptTables');
				} else {
					danger(data.errorInfo);
				}
			},
			error : function() {
				danger("组织机构修改失败!");
			}
		});
	}
}


var TableInit = function () {
    var oTableInit = new Object();
    //初始化Table
    oTableInit.Init = function () {
        $('#deptTables').bootstrapTable({
            url: '../../../department/getDepartmentList',         //请求后台的URL（*）
            method: "POST",
            contentType : "application/x-www-form-urlencoded",
            toolbar:'#toolbar',
            striped: true,                      //是否显示行间隔色
            cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
            pagination: true,                   //是否显示分页（*）
            sortable: true, //是否启用排序
            sortName:"DEP_ID",
    		sortOrder: "DESC",
            checkboxHeader:false,//是否显示表头的全选
            queryParamsType : "undefined",      //默认limit
            queryParams: oTableInit.queryParams,//传递参数（*）
            sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
            pageNumber:1,                       //初始化加载第一页，默认第一页
            pageSize: 10,                       //每页的记录行数（*）
            pageList: [10, 25, 50, 100],        //可供选择的每页的行数（*）
            search: false,                       //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
            strictSearch: true,
            showColumns: true,                  //是否显示所有的列
            minimumCountColumns: 2,             //最少允许的列数
            clickToSelect: true,                //是否启用点击选中行
            height: 500,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
            uniqueId: "depID",                  //每一行的唯一标识，一般为主键列
            showToggle:true,                    //是否显示详细视图和列表视图的切换按钮
            cardView: false,                    //是否显示详细视图
            detailView: false,
            singleSelect:true,
            responseHandler: function(res) {
            	return getTableData(res);
            },      //是否显示父子表
            columns: [{
                checkbox: true,
            }, {
                field: 'depID',
                title: '机构编号',
                sortable: true,//是否可排序
                order: "DESC"//默认排序方式
            }, {
                field: 'depName',
                title: '组织机构名称'
            }, {
                field: 'depDescription',
                title: '组织机构描述'
            } ]
        });
    };

    //得到查询的参数
    oTableInit.queryParams = function (params) {
        var temp = {   //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的pageSize, pageNumber, searchText, sortName, sortOrder
        		pageSize: params.pageSize,   //页面大小
        		pageNumber: params.pageNumber,  //页码
        		sortName: "DEP_ID",
        		sortOrder: params.sortOrder,
        		depName: $('#deptNameSearch').val()
        };
        return temp;
    };
    return oTableInit;
};


var ButtonInit = function () {
    var oInit = new Object();
    //var postdata = {};

    oInit.Init = function () {
        //初始化页面上面的按钮事件
    };

    return oInit;
};